/*=============================================================================

  SYSTEM MANAGER DEVICE DEFINITION

  FILE: SYSmgr_DEV.h
  
  DESCRIPTION

    Application Manager Device Definition

  EXTERNALIZED FUNCTIONS

    
  Copyright (c) DaeSung Engineering Inc. All rights reserved.

=============================================================================*/
/*=============================================================================

                             EDIT HISTORY

  ---------  -------  -------------------------------------------------------
    when       who     what, where, why
  ---------  -------  -------------------------------------------------------
   06/28/03   nso4th   Version 0.1

=============================================================================*/

#ifndef _SYSMGR_DEV_H_
#define _SYSMGR_DEV_H_

/*=============================================================================
  FEATURE DEFINITION
=============================================================================*/

/*=============================================================================
  HEADER INCLUSION
=============================================================================*/
// HARDWARE.DEVIC
#include <HFgDev.h>
#include <HFg_cfg.h>
#include <HCAM.h>

// MANAGER.LIST
#include <BKmgr.h>
#include <IOmgr.h>
#include <HMot.h>
#include <HIO.h>
#include <HAIO.h>
// APPLICATION.MODULE
#include <area.h>

/*=============================================================================
  APPLICATION DEFINITION
=============================================================================*/


/*=============================================================================
  REAL TIME UI DEFINITION
=============================================================================*/
typedef enum
{
	SYSMGR_RTUI_MAX
} SYSmgr_RTUI_e;


/*=============================================================================
  DEVICE AUX DEFINITION
=============================================================================*/

typedef enum
{
	// LOADING POSITON
	HMOT_X_LOAD_POS = 0,
	HMOT_Y_LOAD_POS,
	HMOT_Z_LOAD_POS,

	// SCAN START POSITION
	HMOT_X_SCAN_POS,
	HMOT_Y_SCAN_POS,
	HMOT_Z_SCAN_POS,

	// SW-Limit
	HMOT_X_NLIMIT_POS,
	HMOT_X_PLIMIT_POS,
	HMOT_Y_NLIMIT_POS,
	HMOT_Y_PLIMIT_POS,
	HMOT_A_NLIMIT_POS,
	HMOT_A_PLIMIT_POS,
	HMOT_B_NLIMIT_POS,
	HMOT_B_PLIMIT_POS,
	HMOT_C_NLIMIT_POS,
	HMOT_C_PLIMIT_POS,
	HMOT_D_NLIMIT_POS,
	HMOT_D_PLIMIT_POS,
	HMOT_E_NLIMIT_POS,
	HMOT_E_PLIMIT_POS,

	//Home Offset
	HMOT_X_HOFFSET_POS,
	HMOT_Y_HOFFSET_POS,
	HMOT_A_HOFFSET_POS,
	HMOT_B_HOFFSET_POS,
	HMOT_C_HOFFSET_POS,
	HMOT_D_HOFFSET_POS,
	HMOT_E_HOFFSET_POS,

	
	HMOT_PTBL_MAX = 256
} SYSmgr_HMOT_POSTABLE_e;

// MOTION VELOCITY TABLE
typedef enum
{
	// LOADING
	HMOT_X_LOAD_VEL = 0,
	HMOT_Y_LOAD_VEL,
	HMOT_Z_LOAD_VEL,

	// SCANNING
	HMOT_X_SCAN_VEL,
	HMOT_Y_SCAN_VEL,
	HMOT_Z_SCAN_VEL,
	HMOT_X_OFFSET_VEL,

	HMOT_VTBL_MAX = 256
} SYSmgr_HMOT_VELTABLE_e;
#endif /* _SYSMGR_DEV_H_ */


/*=============================================================================
  EXTERNALIZED FUNCTION DESCRPTIONS
=============================================================================*/
/*--- END OF SYSmgr_DEV.H ---*/
